package cn.lili.modules.goods.fallback;

import cn.lili.common.exception.ServiceException;
import cn.lili.modules.goods.client.GoodsClient;
import cn.lili.modules.goods.entity.dos.Goods;
import cn.lili.modules.goods.entity.dos.GoodsGallery;
import cn.lili.modules.goods.entity.dos.GoodsSku;
import cn.lili.modules.goods.entity.dos.Wholesale;
import cn.lili.modules.goods.entity.dto.GoodsSearchParams;
import cn.lili.modules.goods.entity.dto.ProxyGoodsOperationDTO;
import cn.lili.modules.goods.entity.vos.GoodsVO;
import cn.lili.modules.operationcenter.entity.vos.UrbanStationSearchParams;
import cn.lili.modules.order.order.entity.vo.GoodsSkuMap;
import cn.lili.modules.order.order.entity.vo.warehouse.InterceptReq;
import cn.lili.modules.promotion.entity.vos.BoxMhgoodsVO;
import cn.lili.modules.search.entity.dos.EsGoodsIndex;
import cn.lili.modules.store.entity.dos.Store;
import cn.lili.modules.supplier.entity.dto.SupplierGoodsOperationDTO;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;

import java.util.Date;
import java.util.List;
import java.util.Map;

/**
 * @author: ftyy
 * @date: 2022-01-13 15:29
 * @description: 商品服务Fallback
 */
public class GoodsFallback implements GoodsClient {

    @Override
    public GoodsVO getGoodsVO(String goodsId) {
        throw new ServiceException();
    }

    @Override
    public List<GoodsGallery> getGoodsGallery(String goodsId) {
        throw new ServiceException();
    }

    @Override
    public void updateGoodsGallery(List<GoodsGallery> goodsGalleryList) {
        throw new ServiceException();
    }

    @Override
    public void updateGoodsInfoImages(Goods goods) {
        throw new ServiceException();
    }

    @Override
    public void updateVideoById(Goods goods) {
        throw new ServiceException();
    }

    @Override
    public void updateGoodsSkuImages(List<GoodsSku> skuList) {
        throw new ServiceException();
    }

    @Override
    public GoodsSku getGoodsSkuByIdFromCache(String skuId) {
        throw new ServiceException();
    }

    @Override
    public GoodsSku getCanPromotionGoodsSkuByIdFromCache(String skuId) {
        throw new ServiceException();
    }

    @Override
    public void updateStoreDetail(Store store) {
        throw new ServiceException();
    }

    @Override
    public void underStoreGoods(String id) {
        throw new ServiceException();
    }

    @Override
    public Long count(String storeId) {
        throw new ServiceException();
    }

    @Override
    public Integer getStock(String skuId) {
        throw new ServiceException();
    }

    /**
     * 添加商品评价数量
     *
     * @param commentNum 评价数量
     * @param goodsId    商品ID
     */
    @Override
    public void addGoodsCommentNum(Integer commentNum, String goodsId) {
        throw new ServiceException();
    }

    @Override
    public Goods getById(String goodsId) {
        throw new ServiceException();
    }

    @Override
    public List<Goods> queryListByParams(GoodsSearchParams searchParams) {
        throw new ServiceException();
    }

    @Override
    public List<String> getSkuIdsByGoodsId(String goodsId) {
        throw new ServiceException();
    }

    @Override
    public List<GoodsSku> getGoodsSkuByList(GoodsSearchParams searchParams) {
        throw new ServiceException();
    }


    @Override
    public void updateGoodsBuyCount(String goodsId, int buyCount) {
        throw new ServiceException();
    }

    @Override
    public GoodsSku getGoodsSkuById(String goodsId) {
        throw new ServiceException();
    }

    @Override
    public void updateGoodsSku(GoodsSku goodsSku) {
        throw new ServiceException();
    }

    @Override
    public Goods getGoodsByParams(GoodsSearchParams searchParams) {
        throw new ServiceException();
    }

    @Override
    public Wholesale getMatchWholesale(String goodsId, Integer num) {
        throw new ServiceException();
    }

    @Override
    public List<Wholesale> getWholesale(String goodsId) {
        throw new ServiceException();
    }

    @Override
    public Long countSkuNum(String storeId) {
        throw new ServiceException();
    }

    @Override
    public Long countSkuNumByGoods(String storeId) {
        throw new ServiceException();
    }

    @Override
    public void addSupplierGoods(SupplierGoodsOperationDTO supplierGoodsOperationDTO) {
        throw new ServiceException();
    }

    @Override
    public void editSupplierGoods(SupplierGoodsOperationDTO supplierGoodsOperationDTO) {
        throw new ServiceException();
    }

    @Override
    public void editSupplierGoodsCategory(SupplierGoodsOperationDTO supplierGoodsOperationDTO) {
        throw new ServiceException();
    }

    @Override
    public Page<Goods> queryByParams(GoodsSearchParams goodsSearchParams) {
        throw new ServiceException();
    }

    @Override
    public void deleteGoods(List<String> goodsIds) {
        throw new ServiceException();
    }

    @Override
    public void deleteGoodsV2(List<String> goodsIds) {
        throw new ServiceException();
    }

    @Override
    public void addSupplierGoods(String goodsId) {
        throw new ServiceException();
    }

    @Override
    public void editProxyGoods(ProxyGoodsOperationDTO proxyGoodsOperationDTO) {
        throw new ServiceException();
    }

    @Override
    public void syncStock(List<String> goodsId) {
        throw new ServiceException();
    }

    @Override
    public void generateFullEs(Integer isGreenGoods) {
        throw new ServiceException();
    }

    @Override
    public boolean updateGoods(Goods goods) {
        throw new ServiceException();
    }

    @Override
    public List<Goods> getByThirdPartyPlatformId(String productId) {
        throw new ServiceException();
    }

    @Override
    public String getToken() {
        throw new ServiceException();
    }

    @Override
    public List<Goods> getProxyGoodsList(String supplierId, String supplierGoodsId) {
        throw new ServiceException();
    }

    @Override
    public Map<String, List> goodsSkusConversion(GoodsSkuMap goodsSkuMap) {
        throw new ServiceException();
    }

    @Override
    public List<JSONObject> getPlatformGoodsDetail(List<String> goodsIds) {
        throw new ServiceException();
    }

    @Override
    public boolean updateById(Goods goods) {
        throw new ServiceException();
    }

    @Override
    public void addStorage(Integer id) {
        throw new ServiceException();
    }

    @Override
    public void downGoods(String id) {
        throw new ServiceException();
    }

    @Override
    public void addSupplierCategoryPathSon(String ids, String categoryPathSon, String categoryPathSonName) {
        throw new ServiceException();
    }

    @Override
    public boolean updateResultGoods(List<String> goodsIds, Boolean isResultGoods) {
        throw new ServiceException();
    }

    @Override
    public void cleanGoodsCache(List<String> goodsIds) {
        throw new ServiceException();
    }

    @Override
    public boolean createGoods(BoxMhgoodsVO boxMhgoodsVO) {
        throw new ServiceException();
    }

    @Override
    public boolean removeGoods(List<String> collect, String storeId) {
        throw new ServiceException();
    }

    @Override
    public boolean addGoods(String id) {
        throw new ServiceException();
    }

    @Override
    public Page<EsGoodsIndex> searchEsByGoodsId(String goodsId) {
        throw new ServiceException();
    }

    @Override
    public long getGoodsCountByStoreIds(List<String> storeIds, String marketEnable) {
        throw new ServiceException();
    }

    @Override
    public long getCurrentMonthGoodsCountByStoreIds(List<String> storeIds) {
        throw new ServiceException();
    }

    @Override
    public long getGoodsCountByParams(UrbanStationSearchParams params) {
        throw new ServiceException();
    }

    @Override
    public void execute() {
        throw new ServiceException();
    }

    @Override
    public JSONObject sendHttpRequest(InterceptReq interceptReq) {
        throw new ServiceException();
    }

    @Override
    public void minuteExecute() {
        throw new ServiceException();
    }
}

